#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>

#include "tab_simbolos.c"


int outputLength = 100;
char * output;
int outputIndex = 0;


FILE * translatedFile;
char * translatedFilePath = "codigo_intermediario.c";

void imprimirArvoreNoArquivo(no raiz)
{
	if(raiz.validString)
	{
		fprintf(translatedFile,"%s",raiz.stringValue);
	}

	int i;

	for(i = 0 ; i < raiz.numeroDeFilhos; i++)
	{
		imprimirArvoreNoArquivo(raiz.filhos[i]);
	}
}

void printOnFile(no raiz)
{
	char * mode = "w";
	translatedFile = fopen(translatedFilePath,mode);
	if(translatedFile == NULL)
	{
		printf("Erro ao abrir arquivo. Traducao abortada");
		exit(1);
	}	

	imprimirArvoreNoArquivo(raiz);

	fclose(translatedFile);
}

void inicializarTradutor()
{
	output =  (char *)malloc(outputLength * sizeof(char));
	tbInicializarTabelas();
}	
	

 

